package com.soecode.lyf.service;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.soecode.lyf.entity.Comment;

public interface CommetService {
	
	/**
	 * 插入问题
	 */
	int savePost(Comment cmnt);
	
	
	/**
	 * 插入问题积分扣除2
	 * @param userid
	 * @return
	 */
	int reduceIntegral(String userid);
	/**
	 * 查询问题
	 * @return
	 */
	List<Comment> selectAll(int sortType);
	
	/**
	 * 查询我的问题
	 * @param sortType
	 * @return
	 */
	List<Comment> selectMyAll(String userid);
	
	/**
	 * 根据问题id查询详情
	 * @param questionid
	 * @return
	 */
	List getPostDetail(String questionid, String userid);
	
	/**
	 * 根据评论id查询评论实体
	 * @param commentId
	 * @return
	 */
	Map selectComment(int commentId);
	
	/**
	 * 根据问题id查询评论
	 * @param questionid
	 * @param userid
	 * @return
	 */
	List<Comment> getCommentList(String questionid, String adopt);
	
	/**
	 * 根据评论id查询回复
	 * @param replyid
	 * @param userid
	 * @return
	 */
	List<Comment> getReplyList(String questionid, String userid);
	
	/**
	 * 根据id查询点赞
	 * @param userid
	 * @return
	 */
	List<Comment> getQuestionPrase(String userid);
	
	/**
	 * 评论点赞列表
	 * @param userid
	 * @return
	 */
	List<Comment> getCommentPrase(String userid);
	
	/**
	 * 回复点赞列表
	 * @param userid
	 * @return
	 */
	List<Comment> getReplyPrase(String userid);
	
	/**
	 * 问题点赞
	 * @param userid
	 * @param questionid
	 * @return
	 */
	int postEnjoy(String uuid, String userid, int questionid);
	
	/**
	 * 评论点赞
	 * @param uuid
	 * @param userid
	 * @param commentid
	 * @return
	 */
	int commentEnjoy(String uuid, String userid, int commentid);
	
	/**
	 * 回复点赞
	 * @param uuid
	 * @param userid
	 * @param replyid
	 * @return
	 */
	int replyEnjoy(String uuid, String userid, int replyid);
	
	/**
	 * 评论点赞数+1
	 * @param commentid
	 * @return
	 */
	int addCommentEnjoyNum(int commentid,String userid);
	/**
	 * 问题点赞数+1
	 * @param questionid
	 * @return
	 */
	int addEnjoyNum(int questionid);
	
	/**
	 * 回复点赞数+1
	 * @param replyid
	 * @param userid
	 * @return
	 */
	int addReplyEnjoyNum(int replyid,String userid);
	
	/**
	 * 问题评论数+1
	 * @param questionid
	 * @return
	 */
	int addCommentNum(int questionid);
	
	/**
	 * 问题取消点赞
	 * @param userid
	 * @param questionid
	 * @return
	 */
	int postEnjoyQuit(String userid, int questionid);
	
	/**
	 * 评论取消点赞
	 * @param userid
	 * @param commentid
	 * @return
	 */
	int CommentEnjoyQuit(String userid,int commentid);
	
	/**
	 * 回复取消点赞
	 * @param userid
	 * @param replyid
	 * @return
	 */
	int ReplyEnjoyQuit(String userid,int replyid);
	
	/**
	 * 问题点赞数-1
	 * @param questionid
	 * @return
	 */
	int reduceEnjoyNum(int questionid);
	
	/**
	 * 评论点赞数-1
	 * @param commentid
	 * @return
	 */
	int reduceCommentEnjoyNum(int commentid, String userid);
	
	/**
	 * 评论点赞数-1
	 * @param replyid
	 * @param userid
	 * @return
	 */
	int reduceReplyEnjoyNum(int replyid, String userid);
	
	/**
	 * 提交评论
	 * @param questionid
	 * @param userid
	 * @param content
	 * @param time
	 * @return
	 */
	int toComment(Comment cmnt);
	
	/**
	 * 根据评论id查询userid
	 * @param commentid
	 * @return
	 */
	String selectReplyUserid(int commentid);
	
	/**
	 * 提交回复
	 * @param cmnt
	 * @return
	 */
	int toReply(Comment cmnt);
	
	/**
	 * 提交回复，回复数字+1
	 * @param commentid
	 * @return
	 */
	int addReplyNum(int commentid);
	/**
	 * 根据回复id查询回复
	 * @param replyid
	 * @return
	 */
	HashMap getReplyInfo(int replyid);
}
